package com.jr.mapper;

import com.jr.entry.BlogText;
import com.jr.pojo.ShowBlog;
import org.apache.ibatis.session.RowBounds;

import java.util.ArrayList;

/*博客id*//*
    private Integer blogid;
    *//*标题*//*
    private String title;
    *//*文章内容*//*
    private String detail;
    *//*文章类型*//*
    private String type;
    *//*作者*//*
    private String author;
    *//*点击次数*//*
    private Integer clicknumber;
    *//*发布时间*//*
    private String posttime;
    *//*置顶状态*//*
    private Integer status;*/
public interface BlogTextMapper {
    /**
     * 根据BlogText实体类中的 private String type 进行条件查询
     * type有1、Java基础 2、数据库 3、JSP 4、框架
     *
     * @param blogText
     * @return 查询到的BlogText以集合形式进行遍历显示在页面中
     */
    ArrayList<ShowBlog> selectBy(BlogText blogText, RowBounds rowBounds);

    ArrayList<BlogText> selectByStatus(Integer status);

    /**
     * 根据点击次数进行热门文章点击次数从大到小排序
     *
     * @return 询到的BlogText以集合形式进行遍历显示在侧面的热门文章模块处
     */
    ArrayList<ShowBlog> selectByClickNumber();

    /**
     * 后台管理模块中的文章编辑功能
     * 根据被选中的BlogText 对象中的blogid找到对应的文章，对文章进行编辑更改
     * @param blogText
     * @return 成功返回1失败返回0
     *
     */
    int updateBlogTextByBlogId(BlogText blogText);
    /**
     * 根据用户传过来的uid查询blogText表里的用户uid的对应的所有数据 显示在后台首页文章管理位置
     *
     * @param blogText
     * @return
     */
    ArrayList<ShowBlog>  selectByUid(BlogText blogText,RowBounds rowBounds);

    /**
     * 根据blogid查询blogText表里的对应的所有数据 显示在后台并进行修改
     *
     * @param blogText
     * @return
     */
    ArrayList<ShowBlog> selectByblogid(BlogText blogText);


    /**
     * 根据用户传过来的uid查询blogText表里的用户uid的对应的所有数据 显示在后台首页文章管理位置
     *
     * @param blogText
     * @return
     */
    Integer selectBlogSize(BlogText blogText);

    /**
     * 后台管理模块中的文章删除功能
     * 根据被选中的BlogText 对象中的blogid找到对应的文章，对文章进行删除
     *
     * @param blogText
     * @return 删除成功返回1 失败返回0
     */
    int deleteBlogTextByBlogId(BlogText blogText);


    /**
     * 后台管理中编写文章模块  新增文章
     *
     * @param blogText
     * @return 成功返回1 失败返回0
     */
    int insertBlogText(BlogText blogText);
}
